package com.blacktry.entity.blog;

import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * <p>
 * 
 * </p>
 *
 * @author blackTry
 * @since 2022-02-07
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="Articles对象", description="")

public class Articles implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "博文ID")
    @TableId(value = "article_id", type = IdType.AUTO)
    private Integer articleId;

    @ApiModelProperty(value = "发表用户ID")
    private String userId;

    @ApiModelProperty(value = "博文标题")
    private String articleTitle;

    @ApiModelProperty(value = "摘要")
    private String articleDescription;

    @ApiModelProperty(value = "文章封面")
    private String articleCover;

    @ApiModelProperty(value = "博文内容")
    private String articleContent;

    @ApiModelProperty(value = "浏览量")
    private Long articleViews;

    @ApiModelProperty(value = "评论总数")
    private Long articleCommentCount;

    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @DateTimeFormat( pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "发表时间")
    private Date articleDate;

    @ApiModelProperty(value = "点赞量")
    private Long articleLikeCount;

    @ApiModelProperty(value = "用于标注1.发布2.草稿3.回收站")
    private Integer articleType;

    @ApiModelProperty(value = "是否置顶")
    private Integer articleTop;

    @ApiModelProperty(value = "可看程度")
    private Integer articleCan;

    public Integer getArticleId() {
        return articleId;
    }

    public void setArticleId(Integer articleId) {
        this.articleId = articleId;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getArticleTitle() {
        return articleTitle;
    }

    public void setArticleTitle(String articleTitle) {
        this.articleTitle = articleTitle;
    }

    public String getArticleDescription() {
        return articleDescription;
    }

    public void setArticleDescription(String articleDescription) {
        this.articleDescription = articleDescription;
    }

    public String getArticleCover() {
        return articleCover;
    }

    public void setArticleCover(String articleCover) {
        this.articleCover = articleCover;
    }

    public String getArticleContent() {
        return articleContent;
    }

    public void setArticleContent(String articleContent) {
        this.articleContent = articleContent;
    }

    public Long getArticleViews() {
        return articleViews;
    }

    public void setArticleViews(Long articleViews) {
        this.articleViews = articleViews;
    }

    public Long getArticleCommentCount() {
        return articleCommentCount;
    }

    public void setArticleCommentCount(Long articleCommentCount) {
        this.articleCommentCount = articleCommentCount;
    }

    public Date getArticleDate() {
        return articleDate;
    }

    public void setArticleDate(Date articleDate) {
        this.articleDate = articleDate;
    }

    public Long getArticleLikeCount() {
        return articleLikeCount;
    }

    public void setArticleLikeCount(Long articleLikeCount) {
        this.articleLikeCount = articleLikeCount;
    }

    public Integer getArticleType() {
        return articleType;
    }

    public void setArticleType(Integer articleType) {
        this.articleType = articleType;
    }

    public Integer getArticleTop() {
        return articleTop;
    }

    public void setArticleTop(Integer articleTop) {
        this.articleTop = articleTop;
    }

    public Integer getArticleCan() {
        return articleCan;
    }

    public void setArticleCan(Integer articleCan) {
        this.articleCan = articleCan;
    }

    public Articles(Integer articleId,
                    String userId,
                    String articleTitle,
                    String articleDescription,
                    String articleCover,
                    String articleContent,
                    Long articleViews,
                    Long articleCommentCount,
                    Date articleDate,
                    Long articleLikeCount,
                    Integer articleType,
                    Integer articleTop,
                    Integer articleCan) {
        this.articleId = articleId;
        this.userId = userId;
        this.articleTitle = articleTitle;
        this.articleDescription = articleDescription;
        this.articleCover = articleCover;
        this.articleContent = articleContent;
        this.articleViews = articleViews;
        this.articleCommentCount = articleCommentCount;
        this.articleDate = articleDate;
        this.articleLikeCount = articleLikeCount;
        this.articleType = articleType;
        this.articleTop = articleTop;
        this.articleCan = articleCan;
    }

    public Articles() {
    }

    @Override
    public String toString() {
        return "Articles{" +
                "articleId='" + articleId + '\'' +
                ", userId='" + userId + '\'' +
                ", articleTitle='" + articleTitle + '\'' +
                ", articleDescription='" + articleDescription + '\'' +
                ", articleCover='" + articleCover + '\'' +
                ", articleContent='" + articleContent + '\'' +
                ", articleViews=" + articleViews +
                ", articleCommentCount=" + articleCommentCount +
                ", articleDate=" + articleDate +
                ", articleLikeCount=" + articleLikeCount +
                ", articleType=" + articleType +
                ", articleTop=" + articleTop +
                ", articleCan=" + articleCan +
                '}';
    }
}
